declare i32 @get_int()

declare float @get_float()

declare i32 @get_char()

declare i32 @get_int_array(i32*)

declare i32 @get_float_array(float*)

declare void @put_int(i32)

declare void @put_float(float)

declare void @put_char(i32)

declare void @put_int_array(i32, i32*)

declare void @put_float_array(i32, float*)

define i32 @main() {
label_entry:
  br label %label6
label_ret:                                                ; preds = %label18
  ret i32 %op26
label6:                                                ; preds = %label_entry, %label21
  %op22 = phi i32 [ 20, %label_entry ], [ %op15, %label21 ]
  %op23 = phi i32 [ 1, %label_entry ], [ %op11, %label21 ]
  %op24 = phi i32 [ 1, %label_entry ], [ %op23, %label21 ]
  %op7 = icmp ne i32 1, 0
  br i1 %op7, label %label8, label %label18
label8:                                                ; preds = %label6
  %op11 = add i32 %op24, %op23
  %op15 = sub i32 %op22, 1
  %op17 = icmp ne i32 %op15, 0
  br i1 %op17, label %label20, label %label21
label18:                                                ; preds = %label6, %label20
  %op25 = phi i32 [ %op22, %label6 ], [ %op15, %label20 ]
  %op26 = phi i32 [ %op23, %label6 ], [ %op11, %label20 ]
  %op27 = phi i32 [ %op24, %label6 ], [ %op23, %label20 ]
  br label %label_ret
label20:                                                ; preds = %label8
  br label %label18
label21:                                                ; preds = %label8
  br label %label6
}
